The present invention relates to the selection of queries, and more specifically, to the efficient selection of a subset of queries that match a given record from a set of registered queries using a cache of results of prior query selections.
Contemporary query engines are typically given a set of records comprising a set of data fields and one query represented by a logical expression over those fields, and solve a problem of finding all records in a set of records that match the given query. Contemporary query engines, however, have not addressed the opposite problem wherein given one record and a set of registered queries, the query engine finds all queries in the set of queries that match this record. The number of registered queries that have to be evaluated to determine all matches for a given record may become large enough that the cost becomes prohibitive due to the computational burden increasing as the allowable range and complexity of the queries increase. This cost manifests as hardware cost and system performance reductions.